<?php
/** 
 * @brief Session Handler公共接口
 */
interface Session_Handler {
    /**
     * Session启动时调用的函数
     * 
     * @param string $sessPath Session数据储存的路径
     * @param string $sessName SessionID储存的变量名
     * 
     * @return boolean
     */
    public function open($savePath, $sessName);

    /**
     * Session注销时调用的函数
     * 
     * @return boolean
     */
    public function close();

    /**
     * 读取SESSION数据
     * 
     * @param string $name 指定的变量名
     * 
     * @return mixed
     */
    public function read($name);

    /**
     * 写入SESSION数据
     * 
     * @param string $name 指定的变量名
     * @param mixed $value 数据
     * 
     * @return boolean
     */
    public function write($name, $value);

    /**
     * 当调用session_destroy()时触发的函数
     * 
     * @param string $sessId SessionID
     * 
     * @return boolean
     */
    public function destroy($sessId);

    /**
     * 清理系统过期的Session数据
     * 
     * @param int $maxLifetime 最大有效时间
     * 
     * @return boolean
     */
    public function gc($maxLifetime);
}
